package com.tyk.bookstore.back.member.model.query;

import com.tyk.bookstore.back.common.core.model.page.PageQuery;
import com.tyk.bookstore.back.common.core.model.type.Gender;
import com.tyk.bookstore.back.member.model.enume.MemberState;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * @author tyk
 * @description 会员
 */
@Data
public class MemberPageQuery extends PageQuery {

    @Schema(description = "ID")
    @Min(1)
    private Long id;

    @Schema(description = "账号/会员名")
    private String account;

    @Schema(description = "手机号")
    private String phone;

    @Schema(description = "邮箱")
    private String email;

    @Schema(description = "状态[0可用，1禁用，2注销]")
    private MemberState state;

    @Schema(description = "昵称")
    private String nickname;

    @Schema(description = "性别[0男，1女，2未知]")
    private Gender gender;

    @Schema(description = "身份证号")
    private String idCard;

    @Schema(description = "创建时间：起始时间")
    private LocalDateTime startTime;

    @Schema(description = "创建时间：终止时间")
    private LocalDateTime endTime;
}
